import request, { extend } from 'umi-request';

// 在请求之前做一些事情，比如改变url，或者改变options
// 在请求拦截器里面打开loading
request.interceptors.request.use((url, options) => {
    options.headers = {
        ...options.headers,
        token: sessionStorage.token || '',
    };
    return {
        url,
        options,
    };
});

// 在请求回来之后组做一些事情
// 在返回拦截器里面关闭loading
request.interceptors.response.use(async (response) => {
    const res = await response.json();
    // 进行正确处理
    return res;
});

const http = extend({
    // 超时时间，单位毫秒
    timeout: 30000,
    // 请求前缀
    // prefix: '/api',
    headers: {
        'Content-Type': 'application/json',
    },
});
export const httpForm = extend({
    // 超时时间，单位毫秒
    timeout: 30000,
    // 请求前缀
    prefix: '/api',
    // withCredentials:true,
    headers: {
        // 'Content-Type': 'multipart/form-data',
        // 'Content-Type':"multipart/form-data; boundary=----WebKitFormBoundary7OhpeZDbWvqdwQsL"
        // 'Content-Type': 'multipart/form-data; boundary=------WebKitFormBoundaryBaBqGBj6BSxfuOkR',
        // 'Content-Type': 'application/x-www-form-urlencoded'
    },
});
export const httpXForm = extend({
    // 超时时间，单位毫秒
    timeout: 30000,
    // 请求前缀
    prefix: '/api',
    // withCredentials:true,
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
    },
});
const API = {
    getDataApi: 'https://run.mocky.io/v3/aa3b9d6b-8bd3-439d-949d-8ba39334b7bf',
};

export const getData = (data = {}) => http.post(API.getDataApi, { data });
